#include <bits/stdc++.h>
using namespace std;

int main() {
  int n,m,num[105],diff[105];
  cin>>n>>m;
  for(int i=1;i<=n;i++){
    cin>>num[i];
  }
  //求差分数组
  for(int i=1;i<=n;i++){
    diff[i]=num[i]-num[i-1];
  }

  for(int i=0;i<m;i++){
    int a,b,c;
    cin>>a>>b>>c;
    //在区间[l,r]中，d[l]+c,d[r+1]-c
    diff[a]+=c;
    diff[b+1]-=c;
  }
  //将差分数组转化为原数组（用前缀和）
  for(int i=1;i<=n;i++){
    num[i]=num[i-1]+diff[i];
  }

  //打印原数组
  for(int i=1;i<=n;i++){
    cout<<num[i]<<" ";
  }
  return 0;
}
/*
n个数：
m次操作：
    每一次在[a,b]区间内 操作数为c
*/
/*
4 1 3 5 2 7
[2,4] +5
[4,5] -6

==>
6 2
4 1 3 5 2 7
2 4 5
4 5 -6
答案为：4 6 8 4 -4 7 
*/
